1. The Field of the Invention
The present invention relates to networking technologies; and more specifically, to the automated generation of code that simulates a message exchange pattern.
2. Background and Related Art
Computing technology has transformed the way we work and play. Computing systems now take a wide variety of forms including desktop computers, laptop computers, tablet PCs, Personal Digital Assistants (PDAs), and the like. Even household devices (such as refrigerators, ovens, sewing machines, security systems, and the like) have varying levels of processing capability and thus may be considered computing systems.
Much of the functionality provided by computing systems relies on the computing system being networked with (and able to communicate messages with) other computing systems. In order for the two communicating computing systems to accomplish a particular task, a message transaction involving a pattern of message exchanges may be needed. Each computing system involved in the message transaction has an application (hereinafter also referred to as a “message exchange pattern application”) that assists in processing messages received as part of the transaction that follows the message exchange pattern, and transmitting other messages that conform with the message exchange pattern.
In order to test a message exchange pattern application, the message exchange pattern application may be installed on different computing systems and then tested. However, in many cases, the message exchange pattern application on one computing system may be significantly different than the message exchange pattern application on another computing system, even though the two message exchange pattern applications are capable of interacting with each other using the message exchange pattern. The tester might only have access to one of the message exchange pattern applications. Furthermore, the owner of the other message exchange pattern application may not be willing or able to cooperatively test the interaction of the two message exchange pattern applications. Accordingly, it is not always feasible to test the message exchange pattern application in an actual network environment in which it will be implemented and deployed.
What would be advantageous is a mechanism for testing message exchange pattern applications without having to test the application in the actual network environment in which it would ultimately be employed. It would furthermore be advantageous if this testing may be accomplished without requiring the authoring of additional testing software each time a message exchange pattern application is to be tested.